1. Field of the Invention
This invention relates to a data communication system, data communication method and data communication apparatus, and relates in particular to communication between a source and a destination, in which the source transmits is one segment of data to the destination using address information corresponding to a part of a receiving buffer of the destination.
2. Related Background Art
Conventionally, among peripheral devices for personal computers (hereafter referred to as PCs), hard disks and printers have had the highest frequency of use. These peripheral devices were connected to the PC by means of a general-purpose digital interface such as a dedicated input/output interface or a SCSI interface (small computer system interface).
Recently, however, AV (Audio/Visual) devices such as digital cameras and digital video cameras are commanding greater interest and attention as PC peripheral devices. These AV (Audio/Visual) devices have also been connected to the PC via a dedicated interface.
With conventional dedicated interfaces and SCSI interfaces, particularly when large volumes of data are involved, such as the still images and moving images conveyed by AV devices, the rate of data transmission has been low, and because parallel communication is used, large communication cables were required, limiting the number and types of peripheral devices that could be connected to only a few devices. Numerous problems arose, such as limitations in the connection method and the inability to transmit data in real time.
The IEEE (Institute of Electrical and Electronics Engineers, Inc.) 1394-1995 standards are known as a next-generation digital interface featuring high speed and a high level of performance, and are designed to solve these problems.
Digital interfaces that conform to the IEEE 1394-1995 standards (hereafter referred to as 1394 interfaces) offer the following features.    (1) Data is transmitted at high speed.    (2) Two methods for transmitting data in real time are supported: the isochronous transmission method and the asynchronous transmission method.    (3) Connections can be configured (topology) with a high degree of freedom.    (4) Plug-and-play functions and hot-line insertion/removal functions are supported.
With IEEE 1394-1995 standards, however, certain elements such as the physical and electrical configurations of connectors and the two most fundamental data transmission methods are defined, but other elements such as the types of data, the data configuration, and the communication protocol by which data is sent and received, are not defined.
Furthermore, with the isochronous transmission method used with the IEEE 1394-1995 standards, because the response to transmitted packets is not regulated, there is no assurance as to whether each individual isochronous packet has been received. Consequently, the isochronous transmission method cannot be used to assure successful transmission of consecutive multiple data items, or of data from a single file which has been subdivided into multiple data items.
Moreover, with the isochronous transmission method used with the IEEE 1394-1995 standards, the total number of communications is restricted to 64, even if there are available transmission band widths. For this reason, it is not possible to use the isochronous transmission method to transmit numerous communications on a small number of transmission band widths.
In addition, with the IEEE 1394-1995 standards, in cases such as the bus being reset when the power supply to a node is turned on or off, or when a node is connected or disconnected, it is necessary to interrupt the transmission of data. With the IEEE 1394-1995 standards, conversely, if data transmission is interrupted by a bus reset or an error occurring during the transmission, it is not possible to discern the contents of the data which have been lost. Furthermore, resumption of a transmission which was interrupted requires extremely complex and intricate communication procedures.
The bus reset is a function by which new topologies are recognized and the addresses assigned to the various nodes (node IDs) are set automatically. This function enables plug-and-play functions and hotline insertion/removal functions to be supported with the IEEE 1394-1995 standards.
Additionally, with regard to communication systems conforming to the IEEE 1394-1995 standards, although real-time transmission is not required, there have been no specific proposals for a communication protocol which would enable continuous transmission of object data comprising comparatively large volumes of data (for instance, still image data, graphics data, text data, file data, and program data) where a high level of reliability is required.